package org.sikyon.chocolatebiscuit.model.entities;

abstract class Entity<K> implements Identifiable<K> {

    abstract String idProperty();

    @Override
    public abstract void id(K id);

    @Override
    public abstract K id();

    @Override
    public String toString() {
        return this.getClass().getSimpleName() + ":<id>" + idProperty() + "::" + id();
    }
}
